Cloud computing solutions have been developed for cost-effective distributed storage, distributed processing and for delivery of other services. Storing to “the cloud” involves making use of available storage that can be located wherever there is spare capacity in a network, with the entity that wishes to use the storage service not needing to choose the physical storage locations. Services provided by a cloud services provider typically include helping the customer (e.g., a company) to manage and store their data reliably and securely using network communications including Internet technologies and distributed computing and storage. For example, customers may rely on the cloud services to back up regularly and to possibly recover data lost from laptops, workstations, email servers etc. In the field of managed storage services in cloud computing, the cloud service provider stores the data on a shared managed storage cloud. The customer whose data is to be stored in the cloud can be an individual client using a personal device or an organization having an internal data processing network.
An example cloud storage service offering is the SmartCloud Content Management (SCCM) service provided by IBM® Corporation. It provides customers with private storage within a shared managed cloud, and offers content management, archiving and information lifecycle management. An early IBM offering on which the SCCM is based is the IBM® “SmartCloud Archive”, which is a software-implemented managed storage service offering, mainly for enterprise customers, and which is implemented on an IBM Data center server. It may be hosted by BCRS (Business Continuity and Recovery Service) in IBM data centers and delivered on IBM Cloud technology to facilitate overall archiving and retrieval of data. It is usable by customers who need to carry out a number of operations including: indexing, searching, retrieving, and tracking client specific content in a digital form; e.g., Statements, confirmations, external customer correspondence, and business documents (PDF, Word, Excel, etc.), scanning and checking images. The SmartCloud solutions integrate various technical features and benefits of previous solutions such as features provided by IBM's AIX® servers, IBM's Storwize v7000 storage management solutions, the IBM FileNet P8 platform, IBM's Tivoli Storage Manager (TSM) archiving, and LTO (Linear Tape-Open) technologies.
In some known solutions, cloud service customers are provided with a portal to manage their cloud storage environment. The portal provides one or more of functions: a customer administrator is given access for defining an archive structure and access rights. In addition, a customer user access is defined for loading and/or retrieving data such as files and documents. Moreover, customers are provided with functions for searching and storing documents according to various criteria. The customer is often able to control its cloud environment by means of a user interface. This user interface can allow the client to manage the cloud environment from virtually anywhere in the world.
Cloud-based solutions when deployed inherently raise some security concerns. Security concerns are partly linked to a multi-tenancy environment. Multi-tenancy refers to the ability to host a single instance of a software solution that serves multiple customers (e.g., organizations). In the multi-tenancy environment, each customer is a tenant who shares the cloud resources with other tenants or customers. In this multi-tenancy environment, each customer is usually provided with an account through which the customer can, following some form of identification, manage their data. In this shared environment, each tenant or customer is entitled to expect that the cloud service provider will maintain security including privacy. Customer data should remain secure and private from other customers or potential attackers. One way to achieve a level of security is to use encryption. Encryption in particular provides a level of privacy since a first customer who does not have knowledge of the encryption key used to encrypt a second customer data should be unable to read in plain text the second customer's encrypted data. To enforce security in such multi-tenancy environment, the encryption capability of the IBM FileNet P8 platform can be harnessed to provide security. A solution such as the IBM FileNet solution provides a Content Manager which includes versioning and life cycle management as well as security.
Typically, encryption key management is required to provide content security. This key management could be done in many ways. For example, the customer could first create a security key. However there is no guarantee that the key chosen by the customer will be compliant with the appropriate security standards. Unless the key is randomly generated and non-trivial, it may be fairly easy for an attacker to guess the key, exposing the customer's data to security vulnerabilities. It is the cloud provider's responsibility to provide security including privacy of customers' data, and this may not be achieved if the customer creates the cryptographic key.
To provide security, instead of having a security key generated by the customer, the cloud provider can generate the key. This allows the cloud provider to be confident that the cryptographic keys are compliant with the appropriate security requirements of the cryptographic standards. However, this does not ensure customer endorsement and safe storage of the generated keys on the customer's own data storage device, and so there is no assurance of the customer's own ability to decrypt stored data.
For the avoidance of doubt, the terms “including” and “comprising” as used throughout this specification are not to be construed as meaning “consisting only of” but are to be construed as non-exclusive terms.